package jm.nj.demo10mian.demo01;

import java.io.File;
import java.io.IOException;


/*
* File类的创建和删除功能
* */
public class Demo03File {
    public static void main(String[] args) throws IOException {
        method_03();
        //method_01();
        //method_02();
    }
/*
* boolean mkdir()创建单层文件夹
* boolean mkdirs() 单层多次均可
* 创建,构造方法给出
* 文件夹存在则不会创建,返回false
* */
    private static void method_02() {
        File file = new File("D:\\bbb");
        boolean b= file.mkdir();
        System.out.println(b);

        file = new File("d:\\bbb\\bb");
        b = file.mkdir();
        System.out.println(b);

        file = new File("d:\\abb\\ab");
        b = file.mkdirs();
        System.out.println(b);


    }

    /*
* boolean creatNewFile()
* 创建一个文件
* 创建文件路径在构造方法中给出
* 构造方法中文件已经存在,返回false,不覆盖
* 不存在,创建,返回true
* 不能创建文件夹,只能创建文件(看类型,不要看后缀)
* */
    private static void method_01() throws IOException {//如果构造方法中给出的路径不出在,则抛出IOException: 系统找不到指定的路径。
        File file = new File("d:\\a.txt");
        boolean b = file.createNewFile();
        System.out.println(b);

        file = new File("d:\\a\\c.txt");
        b= file.createNewFile();
        System.out.println(b);
        System.out.println("----------");

        file = new File("b.txt");
        b= file.createNewFile();
        System.out.println(b);

        System.out.println("-----------");
        file = new File("d:\\新建文件夹");//不要被名字混淆
        b= file.createNewFile();
        System.out.println(b);

    }

    /*
* boolean delete()删除此抽象路径名表示的文件或目录
* 此方法可以删除构造方法给出的文件文件夹
* 构造方法给出的文件文件夹不存在返回false
* 如果文件夹有类容,不能删除,且返回false
* 注意:删除的方法不走回收站,直接删除
* */
    private static void method_03() {
        File file = new File("D:\\a.txt");
        boolean b= file.delete();
        System.out.println(b);

        file = new File("d:\\ewr");
        b= file.delete();
        System.out.println(b);
    }
}
